package com.xoms.admin.service;

import com.xoms.admin.controller.res.bean.RProStockInBean;
import com.xoms.admin.controller.res.bean.RProStockInInfoBean;
import com.xoms.admin.model.AccountBean;
import com.xoms.admin.service.res.PageResult;
/**
 * 入库单
 * @author admin
 *
 */
public interface ProStockInService {

	/**
	 * 获取入库单列表
	 * @param account
	 * @param key
	 * @param page
	 * @param pagesize
	 * @param startTime
	 * @param endTime
	 * @param storeHouseId
	 * @return
	 */
	PageResult<RProStockInBean> getProstockIn(AccountBean account, String key, int page, int pagesize, String startTime,
			String endTime, String storeHouseId);

	/**
	 * 获取入库单详情列表
	 * @param account
	 * @param key
	 * @param page
	 * @param pagesize
	 * @param stockInid
	 * @param paging 
	 * @return
	 */
	PageResult<RProStockInInfoBean> getProstockInDetails(AccountBean account, String key, int page, int pagesize,
			String stockInid, int paging);
	
	/**
	 * 采购入库
	 * @param account
	 * @param purchaseId
	 * @param storeId
	 * @param batch
	 * @param totalCost
	 * @param details
	 * @return
	 */
	RProStockInBean insert(AccountBean account, String purchaseId, String storeId, String batch,
			Double totalCost, String details, int type, int isSubmit);

	
	/**
	 * 编辑入库单
	 * @param account
	 * @param sid
	 * @param storeHouseId
	 * @param type
	 * @param batch
	 * @param totalCost 
	 * @param details 
	 * @param isSubmit 
	 * @return
	 */
	RProStockInBean edit(AccountBean account, String sid, String storeHouseId, Integer type, String batch,
			Double totalCost, String details, int isSubmit);
	

	/**
	 * 删除入库单
	 * @param account
	 * @param sid
	 * @return
	 */
	boolean del(AccountBean account, String sid);
	
	/**
	 * 提交审核
	 * @param account
	 * @param stockInId
	 * @return
	 */
	boolean submit(AccountBean account, String stockInId);

}